A user can provide user input to a computing device using a user input object, such as, for example, one or more fingers, a stylus operated by the user, or other user input objects. In particular, in one example, a user can use a user input object to touch a touch-sensitive display screen or other touch-sensitive component. The interaction of the user input object with the touch-sensitive display screen enables the user to provide user input to the computing device in the form of raw touch sensor data.
In certain existing computing devices, touch sensor data can be directly interpreted into 0, 1, or more “touch points” using simple heuristics on a digital signal processor associated with the touch sensor. Conventional analysis used to determine whether or not the touch sensor data results in a touch point determination can limit the types of interpretation that are possible. In some examples, the touch point determinations in such existing computing devices analyze touch sensor data using a limited number of fixed processing rules. The processing rules are sometimes incapable of being revised to adapt to new technologies as well as being customized for particular touch patterns relative to different users. Further, any additional analysis of the determined touch points involves the subsequent use of additional processing rules. Still further, touch point determinations in existing computing devices discard a substantial amount of raw touch sensor data after the touch point determinations, thus preventing the possibility of further processing of the raw touch sensor data.